package com.linkage.bss.crm.packagemgr.dao;

import java.io.Serializable;
import java.util.List;

import com.linkage.bss.commons.dao.Page;
import com.linkage.bss.crm.packagemgr.model.Area;

/**
 * 地区访问接口
 *
 * @author  xiesh
 * @version  [版本号, 2013-5-9]
 * @see  [相关类/方法]
 * @since  [产品/模块版本]
 */
public interface IAreaDAO extends Serializable {

	/**
	 * 根据地区Id查询地区对象
	 * @param areaId
	 * @return  地区对象
	 */
	public Area getAreaById(long areaId);

	/**
	* 根据地区名称获取地区
	* @param name
	* @return
	*/
	public List<Area> getAreaByName(String name, Page page);

	/**
	* 根据3地区名称获取xiasu地区
	* @param name
	* @return
	*/
	public List<Area> getAreaByName(String name, Integer areaID, Page page);

	/**
	 * 根据地区名称查询符合条件的地区数量
	 * @param name
	 * @return
	 */
	public int getAreaCountByName(String name);

	/**
	 * 根据3地区名称查询符合条件的地区数量
	 * @param name
	 * @return
	 */
	public int getAreaCountByName(String name, Integer areaID);

	public List<Area> getAreaByParentID(Integer areaId);

	/**
	 * 查询包发布的地区的信息
	 *
	 * @param map
	 * @return [参数说明]
	 *
	 * @return int [返回类型说明]
	 * @exception throws [违例类型] [违例说明]
	 * @see [类、类#方法、类#成员]
	 */
	public List<Area> queryPackage2Area(Long pakcageId);

}
